Typically, when a computer program development team (e.g., one or more design architects, developers, programmers, coders, etc.) begins to ideate implementation of a computer program such as an application (“app”), a diagram of the computer program is first created. For instance, members of the development team often gather in a collaborative environment such as conducting a meeting in a conference room to illustrate (e.g., draw) the diagram, for example, on a dry-erase white board. From that point, the process of converting the diagram on the white board into code structures is a manual process that typically requires sub-optimal utilization of time. For instance, the diagram drawn on the white board may need to be converted (e.g., copied) into a digital format and then be passed to developer(s) (e.g., coders, programmers). The developer(s) then spend a considerable amount of time reviewing the design architecture of the diagram to identify aspects of the diagram (e.g., the components, the structure of the components, the interactions of the components, and/or the behavior of the components). After reviewing the design architecture, the developer(s) can begin to create the code structures for the computer program (e.g., write the code from scratch). Often times, while creating the code structures, a developer is unaware and/or unfamiliar with programming features made available via a particular programming platform. For example, a developer may be unable to leverage the latest and most applicable design patterns and best practices associated with particular functionality.